package com.xflib.util;

import java.text.DecimalFormat;
import java.util.Scanner;

class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        double a = sc.nextInt();
        double b = sc.nextInt();
        double cnt = a;
        for(int i=0;i<b;i++){
            cnt = cnt * (1 + 0.001);
        }
        DecimalFormat df = new DecimalFormat("#0.0000");
        System.out.println(df.format(cnt));
    }
}

class latest {
    /**
     *等差数列末项计算
     *
     * 描述
     *
     * 给出一个等差数列的前两项a,b，求第n项是多少。
     *
     * 输入描述
     *
     * 一行，包含三个整数a
     *  a，b, n。−100≤a|b≤100，0<n≤1000。
     *
     * 输出描述
     *  一个整数，即第n项的值。
     *
     * 用例输入
     *   1 4 100
     * 用例输出
     *   298
     * @param args
     */
    public static void main_06(String[] args){
        Scanner sc=new Scanner(System.in);
        int a=sc.nextInt();//首项
        int b=sc.nextInt();//公差
        int c=sc.nextInt();//项数
        int d=b-a;
        System.out.println(a+(c-1)*d);
    }

    /**
     * 计算线段长度
     *
     * 描述:
     *   已知线段的两个端点的坐标A(X_a,Y_a)，B(X_b，Y_b)，求线段AB的长度，保留到小数点后3位。
     *
     * 输入描述:
     *   第一行是两个实数X_a，Y_a，即A的坐标。
     *   第二行是两个实数X_b，Y_b，即B的坐标。
     *   输入中所有实数的绝对值均不超过10000。
     * 输出描述
     *   一个实数，即线段AB的长度，保留到小数点后3位。
     * 用例输入
     *   1 1
     *   2 2
     * 用例输出
     *   1.414
     */
    public static void main_05(String[] args) {
        Scanner scanner = new Scanner(System.in);
        Double x1 = scanner.nextDouble();
        Double y1 = scanner.nextDouble();
        Double x2 = scanner.nextDouble();
        Double y2 = scanner.nextDouble();
        Double h = x2 - x1;
        Double w = y2 - y1;
        DecimalFormat df = new DecimalFormat("#0.000");
        System.out.println(df.format(Math.sqrt(h * h + w * w)));
    }

    /**
     * 打印字符
     *
     * 描述:
     *   输入一个整数，即字符的ASCII码，保证存在对应的可见字符。输出相对应的字符。
     *
     * 输入描述：
     *   一个整数，即字符的ASCII码，保证存在对应的可见字符。
     *
     * 输出描述：
     *   一行，包含相应的字符。
     *
     * 用例输入：
     *   65
     * 用例输出
     *   A
     */
    public static void main_04(String[] args){
        Scanner scanner=new Scanner(System.in);
        int a = scanner.nextInt();
        System.out.println((char)a);
    }

    /**
     * 计算分数的浮点数值
     *
     * 描述
     *   两个整数a和b分别作为分子和分母，既分数a/b，求它的浮点数值(双精度浮点数，保留小数点后9位)。
     * 输入描述
     *   输入仅一行，包括两个整数a和b。
     * 输出描述
     *   输出也仅一行，分数 a/b 的浮点数值（双精度浮点数，保留小数点后9位）。
     * 用例输入
     *   5 7
     * 用例输出
     *   0.714285714
     *
     * @param args
     */
    public static void main_03(String[] args){
        Scanner scanner=new Scanner(System.in);
        Integer a = scanner.nextInt();
        Integer b = scanner.nextInt();
        DecimalFormat df=new DecimalFormat("#0.000000000");
        System.out.println(df.format(Double.valueOf(a) / Double.valueOf(b)));
    }
    /**
     * 带余除法
     *
     * 描述:
     *   给定被除数和除数，求整数商及余数。此题中请使用默认的整除和取余运算，无需对结果进行任何特殊处理。
     * 输入描述:
     *   一行，包含两个整数，依次为被除数和除数（除数非零），中间用一个空格隔开。
     * 输出描述:
     *   一行，包含两个整数，依次为整数商和余数，中间用一个空格隔开。
     * 用例输入:
     *   10 3
     * 用例输出:
     *   3 1
     */
    public static void main_02(String[] args){
        Scanner scanner=new Scanner(System.in);
        Integer a = scanner.nextInt();
        Integer b = scanner.nextInt();
        System.out.println(a / b + " " + a % b);
    }

    /**
     * 字符三角形
     *
     * 描述:
     *   给定一个字符，用它构造一个底边长5个字符，高3个字符的等腰字符三角形。
     * 输入描述:
     *   输入只有一行，包含一个字符。
     * 输出描述
     *   该字符构成的等腰三角形，底边长5个字符，高3个字符。
     *
     * @param args
     */
    public static void main_01(String[] args){
        Scanner scanner=new Scanner(System.in);
        String c = scanner.next();
        System.out.println("  "+c+"  ");
        System.out.println(" "+c+c+c+" ");
        System.out.println(c+c+c+c+c);
    }


}
